<script type="text/javascript" src="<?php echo dirname(str_replace(_DOCUMENT_ROOT, '', str_replace('\\', '/', __FILE__)) );?>/js/formLib.js"></script>
<script type="text/javascript">
var feedbackFormRules = {
	mess_from_name: { 
		label:'Имя', 
		required: 1, 
		regexp:/^[А-яЁёA-Za-z \-]{1,50}$/i,
		e_message: 'буквы, пробелы и тире, до 50шт.'
		//если filter.regexp=true вместо регулярки, то используется регулярка всего правила
		,filter:{ regexp: true }
	},
	mess_from_mail: { 
		label:'Email', 
		required: 1, 
		regexpArr:[
			{regexp:/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i, e_message: 'некорректный E-mail адрес'},
			{regexp:/^[a-z0-9_\-\.@]{6,50}$/i, e_message: 'неподходящая длина адреса'}
		],
		filter:{
			regexp: /^([a-z0-9_\.\-]+@?|[a-z0-9_\.\-]+@[a-z0-9_\-]+\.?|[a-z0-9_\.\-]+@[a-z0-9_\-]+\.[a-z]{1,4})$/i
		}
	},
	mess_body: { 
		label:'Сообщение', 
		required: 1, 
		regexpArr:[
			{regexp:/^[\s\S]{10,}$/, e_message: 'слишком короткое'},
			{regexp:/^[\s\S]{10,500}$/, e_message: 'слишком длинное(больше 500)'}
		]
		//,filter:{ regexp: /^[\s\S]{0,500}$/}
	}
};
function feedbackFormSubmit( formEl ){
	if(!formEl) return;
	//callback: outErrObj or alertErrObj or function(e_obj, form){ formLib.outErrObj(e_obj, form); formLib.alertErrObj(e_obj, form); } or...
	if( formLib.validateFields( formEl, feedbackFormRules, formLib.outErrObj ) ) return false; 
	
	var numb = (Math.random()+'').slice(-2), /* случайное 2-значное число */
	resp=prompt('Пожалуйста, введите цифры '+numb, '');
	
	if(resp==numb) {		
		
		//$.getJSON('/ajax/feedbackForm.php?'+formLib.getRequestBody( formEl ), {data:'data string'}, function(data){
			//console.log( toSource(data) );
		//});
		
		$.ajax({
			type: 'POST',
			url: '/ajax/feedbackForm.php',
			data: formLib.getRequestBody( formEl ),
			dataType: 'json',
			cache: false,
			success: function( data, textStatus ){//alert( toSource(data) );	
				if(data.errors==null){
					alert( data.message ); 
					formLib.clearValues( formEl, 0, ['submit'] );
				}else{
					formLib.outErrObj( data.errors, formEl );
				}	
			},
			error: function( xhr, textStatus, thrownError ){
				alert( textStatus +': '+thrownError );
			}
		});

	}else
	if(resp!==null){
		alert('Попробуйте снова.');
	}
	
	return false;
};
</script>
<form action="" method="POST" name="feedback_form" id="feedback_form" onsubmit="feedbackFormSubmit( this ); return false;">
	<p>
		<a onclick="$('#feedback_toggle').toggle('slow'); return false;" style="text-align:right;" href="/contacts">Обратная связь:</a>
	</p>
	<div id="feedback_toggle" style="display1:none;">
		<p><input type="text" maxlength="50" name="mess_from_name" id="mess_from_name" placeholder="Ваше Имя:" title="Ваше Имя:"></p>
		<p><input type="text" maxlength="50" name="mess_from_mail" id="mess_from_mail" placeholder="Ваш Email:" title="Ваш Email:"></p>
		<p><textarea rows="5" cols="10" name="mess_body" id="mess_body" placeholder="Сообщение:" title="Сообщение:"></textarea></p>
<? 
	CoreModule::includeTemplate( array('template_name'=>'noscript.template.php','template_path'=>'/templates/spectrum' ) );
?>
		<script type="text/javascript">document.write('<p><input type="submit" name="submit" value="Отправить..."></p>')</script>	
	</div>
</form>
<script type="text/javascript">
formLib.activateOnBlurElems( document.forms['feedback_form'], feedbackFormRules );
formLib.activateFilters( document.forms['feedback_form'], feedbackFormRules, function( form, inpName, insSym, isError){
	var messStr = isError? 'символ "'+insSym+'" не подходит': '' ;
	formLib.outMess( form, inpName, messStr, formLib.errorClass );
});
</script>